package wodegua.d21_map;

/**
 * HashMap集合的底层原理
 * HashMap跟Hashset的底层原理是一模一样的，都是基于哈希表实现的。
 * 实际上:原来学的Set系列集合的底层就是基于Map实现的，只是Set集合中的元素只要键数据，不要值数据而已
 *
 * 哈希表
 * JDK8之前，哈希表=数组+链表
 * JDK8开始，哈希表=数组+链表+红黑树
 * 哈希表是一种增删改查数据，性能都较好的数据结构。
 * 但是它是无序，不能重复，没有索引支持的(由键决定特点
 * HashMap的键依赖hashCode方法和equals方法保证键的唯一
 * 如果键存储的是自定义类型的对象，可以通过重写hashCode和equals方法，这样可以保证多个对象内容一样时，HashMap集合就能认为是重复的。
 */
public class HashMapTest {
    public static void main(String[] args) {

    }
}
